home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / PWAPCP02.ZIP / CRED330 / CREDITS.PPE (.txt) < prev   
Encoding:
PCBoard Programming Language Executable  |  1995-11-15  |  39.8 KB  |  1,445 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 3.1O (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Date     DATE002
  20.     Date     DATE003
  21.     Date     DATE004
  22.     Integer  TINTEGER003(9)
  23.     Integer  TINTEGER004(9)
  24.     Integer  TINTEGER005(9)
  25.     Integer  INTEGER006
  26.     Integer  INTEGER007
  27.     Integer  INTEGER008
  28.     Integer  INTEGER009
  29.     Integer  INTEGER010
  30.     Integer  INTEGER011
  31.     Integer  INTEGER012
  32.     Integer  INTEGER013
  33.     Integer  INTEGER014
  34.     Integer  INTEGER015
  35.     Integer  INTEGER016
  36.     Integer  INTEGER017
  37.     Integer  INTEGER018
  38.     Integer  INTEGER019
  39.     Integer  INTEGER020
  40.     Integer  INTEGER021
  41.     Integer  INTEGER022
  42.     Integer  INTEGER023
  43.     Integer  INTEGER024
  44.     Integer  TINTEGER025(10)
  45.     Integer  INTEGER026
  46.     Integer  INTEGER027
  47.     Integer  TINTEGER028(9)
  48.     Integer  INTEGER029
  49.     Integer  INTEGER030
  50.     Integer  INTEGER031
  51.     Integer  INTEGER032
  52.     Integer  INTEGER033
  53.     Integer  INTEGER034
  54.     Integer  INTEGER035
  55.     Money    MONEY001
  56.     Money    MONEY002
  57.     Money    TMONEY003(10)
  58.     Money    MONEY004
  59.     Real     REAL001
  60.     Real     REAL002
  61.     Real     REAL003
  62.     Real     REAL004
  63.     Real     REAL005
  64.     Real     TREAL006(10)
  65.     Real     REAL007
  66.     Real     REAL008
  67.     String   STRING002
  68.     String   STRING003
  69.     String   STRING004
  70.     String   STRING005
  71.     String   STRING006
  72.     String   STRING007
  73.     String   STRING008
  74.     String   STRING009
  75.     String   STRING010
  76.     String   STRING011
  77.     String   STRING012
  78.     String   STRING013
  79.     String   STRING014
  80.     String   STRING015
  81.     String   STRING016
  82.     String   STRING017
  83.     String   STRING018
  84.     String   STRING019
  85.     String   TSTRING020(99)
  86.     String   STRING021
  87.     String   STRING022
  88.     String   STRING023
  89.     String   STRING024
  90.     String   STRING025
  91.     String   STRING026
  92.     String   STRING027
  93.     String   STRING028
  94.     String   STRING029
  95.     String   STRING030
  96.     String   STRING031
  97.     String   STRING032
  98.     String   STRING033
  99.     String   STRING034
  100.     String   STRING035
  101.     String   STRING036
  102.     String   STRING037
  103.     String   STRING038
  104.     String   STRING039
  105.     String   STRING040
  106.     String   STRING041
  107.     String   STRING042
  108.     String   STRING043
  109.     String   STRING044
  110.     String   STRING045
  111.     String   STRING046
  112.     String   STRING047
  113.     String   STRING048
  114.     String   STRING049
  115.     String   STRING050
  116.     String   STRING051
  117.     String   STRING052
  118.     String   STRING053
  119.     String   STRING054
  120.     String   STRING055
  121.     String   STRING056
  122.     String   STRING057
  123.     String   STRING058
  124.  
  125. ;------------------------------------------------------------------------------
  126.  
  127.     STRING018 = "3.30"
  128.     STRING052 = "N"
  129.     STRING019 = LangExt()
  130.     If (STRING019 == "") Then
  131.         STRING019 = ".ENG"
  132.     Endif
  133.     FAppend 7, PPEPath() + "credits.log", 2, 0
  134.     FPut 7, U_Name(), ","
  135.     INTEGER015 = ReadLine(PCBDat(), 16)
  136.     INTEGER012 = ReadLine(PCBDat(), 273)
  137.     INTEGER013 = ReadLine(PCBDat(), 274)
  138.     INTEGER014 = ReadLine(PCBDat(), 275)
  139.     If (INTEGER012 == 0) Then
  140.         PrintLn 
  141.         PrintLn "     @X0BSorry@X0F, but you can't run this ppe without the @X0Aaccounting PSA@X07"
  142.         PrintLn "  @X0F     installed and the @X0Eaccounting feature enabled @X0Fin @X0CPCBSetup.@X07   "
  143.         PrintLn 
  144.         PrintLn 
  145.     Else
  146.         If (INTEGER013 == 0) Then
  147.             STRING021 = "Credits"
  148.         Else
  149.             STRING021 = "Currency"
  150.         Endif
  151.         Log U_Name() + " ran the Credit.ppe at " + String(Time()) + " on " + String(Date()), 0
  152.         GetUser
  153.         GetToken STRING028
  154.         If (STRING028 == "TEST") STRING052 = "Y"
  155.         If ((STRING028 == "CONFIG") && (U_Sec >= SysopSec())) Gosub LABEL026
  156.         If (STRING028 == "TAX") Then
  157.             Gosub LABEL032
  158.             INTEGER017 = 1
  159.             FOpen 3, PPEPath() + "credlang" + STRING019, 2, 0
  160.             :LABEL001
  161.             If (Ferr(3)) Goto LABEL002
  162.             FGet 3, TSTRING020(INTEGER017)
  163.             If (TSTRING020(INTEGER017) == "") Goto LABEL002
  164.             INTEGER017 = INTEGER017 + 1
  165.             Goto LABEL001
  166.             :LABEL002
  167.             INTEGER017 = 1
  168.             FClose 3
  169.             INTEGER017 = 2
  170.             REAL001 = ""
  171.             REAL005 = ""
  172.             TMONEY003(INTEGER017) = ""
  173.             InputStr " What is the tax rate (C/R = 8.2 %) ", REAL001, 14, 5, "0123456789.", 2 + 4 + 256
  174.             If (REAL001 == "") REAL001 = "8.2"
  175.             InputStr " What is the level amount (C/R = $99.00) ", TMONEY003(INTEGER017), 14, 7, "01234566789.", 2 + 4 + 256
  176.             If (TMONEY003(INTEGER017) == "") TMONEY003(INTEGER017) = "99.00"
  177.             InputStr " What is the handling charge (C/R = 0) ", REAL005, 14, 7, "01234566789.", 2 + 4 + 256
  178.             If (REAL005 == "") REAL005 = "0"
  179.         Else
  180.             If (Exist(PPEPath() + "credits.cfg")) Then
  181.                 Gosub LABEL032
  182.                 If ((STRING048 <> STRING018) && (U_Sec >= INTEGER015)) Then
  183.                     PrintLn "                     @X0CWrong @X0Fconfiguation file - must run @X0Econfig editor@X07"
  184.                     Wait
  185.                     Goto LABEL026
  186.                 Endif
  187.                 If ((STRING048 <> STRING018) && (U_Sec <> INTEGER015)) Then
  188.                     PrintLn "                  @X0FConfiguration file @X0Eerror, @X0Fplease tell @X0Bsysop@X07", TSTRING020(44)
  189.                     Goto LABEL035
  190.                 Endif
  191.                 Goto LABEL025
  192.             Endif
  193.             If (Exist(PPEPath() + "credits.cfg")) Then
  194.                 PrintLn 
  195.                 PrintLn "                  ", TSTRING020(43)
  196.                 If (U_Sec == INTEGER015) Then
  197.                     Gosub LABEL026
  198.                     Goto LABEL003
  199.                 Endif
  200.                 If (U_Sec <> INTEGER015) Then
  201.                     PrintLn 
  202.                     PrintLn "                       ", TSTRING020(44)
  203.                 Endif
  204.                 :LABEL003
  205.                 Log "Credits.ppe config file doest exist", 0
  206.                 Goto LABEL035
  207.                 :LABEL004
  208.                 If (Exist(PPEPath() + "warning" + STRING019)) Then
  209.                     DispFile PPEPath() + "warning" + STRING019, ""
  210.                     Print "                          "
  211.                     Wait
  212.                 Endif
  213.                 STRING005 = PPEPath() + "credinf" + STRING019
  214.                 If (Exist(STRING005)) Then
  215.                     DispFile STRING005, 1 + 2
  216.                     Newlines 3
  217.                 Endif
  218.                 :LABEL005
  219.                 FClose 1
  220.                 INTEGER017 = 1
  221.                 FOpen 3, PPEPath() + "credlang" + STRING019, 2, 0
  222.                 :LABEL006
  223.                 If (Ferr(3)) Goto LABEL007
  224.                 FGet 3, TSTRING020(INTEGER017)
  225.                 If (TSTRING020(INTEGER017) == "") Goto LABEL007
  226.                 INTEGER017 = INTEGER017 + 1
  227.                 Goto LABEL006
  228.                 :LABEL007
  229.                 FClose 3
  230.                 :LABEL008
  231.                 If (STRING052 == "Y") PrintLn "                 @X0B                Test Mode@X07"
  232.                 Newlines 1
  233.                 PrintLn "@POS:22@", TSTRING020(31)
  234.                 PrintLn "@POS:22@", TSTRING020(32)
  235.                 PrintLn "@POS:22@", TSTRING020(33)
  236.                 PrintLn "@POS:22@", TSTRING020(34)
  237.                 PrintLn "@POS:22@", TSTRING020(35)
  238.                 PrintLn "@POS:22@", TSTRING020(36)
  239.                 PrintLn "@POS:22@", TSTRING020(37)
  240.                 PrintLn "@POS:22@", TSTRING020(38)
  241.                 PrintLn "@POS:22@", TSTRING020(39)
  242.                 PrintLn "@POS:22@", TSTRING020(40)
  243.                 PrintLn 
  244.                 InputStr "@POS:20@" + TSTRING020(41) + " ", STRING023, 14, 1, Mask_Ascii(), 2 + 4 + 256 + 8
  245.                 If (STRING023 == "Q") Then
  246.                     Goto LABEL035
  247.                 Endif
  248.                 If (STRING023 == "1") Then
  249.                     DispFile PPEPath() + "MAINMNU1" + STRING019, ""
  250.                     Wait
  251.                     Goto LABEL008
  252.                 Endif
  253.                 If (STRING023 == "3") Then
  254.                     Gosub LABEL033
  255.                     Goto LABEL008
  256.                 Endif
  257.                 If (STRING023 == "4") Then
  258.                     STRING026 = "cr" + String(U_RecNum(U_Name())) + ".inv"
  259.                     DispFile STRING025 + STRING026, ""
  260.                     Goto LABEL008
  261.                 Endif
  262.                 If (STRING023 == "5") Then
  263.                     Shell 1, INTEGER011, "pkzip -a subscib ", "subscribe." + STRING019
  264.                     STRING026 = "subscrib.zip"
  265.                     STRING025 = PPEPath()
  266.                     Gosub LABEL034
  267.                     Delete PPEPath() + "subscrib.zip"
  268.                     Goto LABEL008
  269.                 Endif
  270.                 FAppend 1, PPEPath() + "credits.chg", 2, 0
  271.                 :LABEL009
  272.                 Newlines 2
  273.                 InputStr "@X0F  " + TSTRING020(8), STRING003, 13, 25, Mask_Ascii(), 4 + 2 + 8 + 256
  274.                 If (STRING003 == "") Goto LABEL005
  275.                 If (STRING003 == "Q") Goto LABEL035
  276.                 PrintLn 
  277.                 PrintLn "@X0F  " + TSTRING020(9)
  278.                 InputStr "  " + TSTRING020(10), STRING002, 11, 20, "Qq0123456789", 2 + 4 + 256 + 128 + 8
  279.                 PrintLn 
  280.                 PrintLn 
  281.                 STRING038 = STRING002
  282.                 If (STRING002 == "Q") Then
  283.                     FClose 1
  284.                     Goto LABEL035
  285.                 Endif
  286.                 If (ValCC(STRING002)) Then
  287.                     FClose 5
  288.                     FOpen 5, PPEPath() + "credits.tcn", 2, 0
  289.                     PrintLn "             ", TSTRING020(86)
  290.                     Newlines 5
  291.                     INTEGER035 = 1
  292.                     STRING055 = Len(StripAtx(TSTRING020(87)))
  293.                     INTEGER030 = Len(TSTRING020(87))
  294.                     :LABEL010
  295.                     If (Ferr(5)) Goto LABEL011
  296.                     FGet 5, STRING034
  297.                     If (INTEGER035 > 69) Then
  298.                         INTEGER035 = 1
  299.                     Endif
  300.                     Print Space(80)
  301.                     AnsiPos INTEGER035, 20
  302.                     Print TSTRING020(87)
  303.                     AnsiPos 1, 20
  304.                     Print Chr(8) + Chr(8) + Chr(8) + Chr(8) + Chr(8) + Chr(8) + Chr(8)
  305.                     INTEGER035 = INTEGER035 + 1
  306.                     If (STRING034 == STRING002) Then
  307.                         PrintLn "             ", TSTRING020(45)
  308.                         Goto LABEL009
  309.                     Endif
  310.                     INTEGER009 = Len(STRING034)
  311.                     For INTEGER019 = 1 To INTEGER009
  312.                         STRING035 = Mid(STRING034, INTEGER019, 1)
  313.                         If (STRING035 == "*") Then
  314.                             INTEGER009 = INTEGER009 - 1
  315.                             STRING036 = Left(STRING034, INTEGER017)
  316.                             STRING037 = Left(STRING002, INTEGER017)
  317.                             If (STRING037 == STRING036) Then
  318.                                 PrintLn 
  319.                                 PrintLn "        ", TSTRING020(46)
  320.                                 Goto LABEL009
  321.                             Endif
  322.                         Endif
  323.                     Next
  324.                     Goto LABEL010
  325.                     :LABEL011
  326.                     PrintLn Space(80)
  327.                     If ((STRING046 == "N") && (CCType(STRING002) == "AMERICAN EXPRESS")) Then
  328.                         PrintLn "                             @X0ENo @X0FAmerican Express"
  329.                         Goto LABEL009
  330.                     Endif
  331.                     If ((STRING047 == "N") && (CCType(STRING002) == "DISCOVER")) Then
  332.                         PrintLn "                                 @X0ENo @X0FDiscover"
  333.                         Goto LABEL009
  334.                     Endif
  335.                     PrintLn 
  336.                     PrintLn "                     " + Strip(Left(CCType(STRING002), 20), " "), "@X0A -@X07 ", FmtCC(STRING002)
  337.                     Goto LABEL012
  338.                 Endif
  339.                 PrintLn 
  340.                 PrintLn "   @X0F" + TSTRING020(11)
  341.                 Goto LABEL005
  342.                 :LABEL012
  343.                 PrintLn 
  344.                 InputStr "                " + TSTRING020(12), STRING050, 12, 5, "0123456789-/", 2 + 4 + 64 + 256
  345.                 STRING058 = Date()
  346.                 INTEGER034 = InStr(STRING050, "/")
  347.                 STRING056 = Left(STRING050, INTEGER034 - 1)
  348.                 If (Left(STRING056, 1) == 0) STRING056 = Right(STRING056, 1)
  349.                 DATE004 = Len(STRING050)
  350.                 STRING057 = String(Right(STRING050, 2))
  351.                 If (STRING057 < String(Right(Year(Date()), 2))) Then
  352.                     PrintLn "   ", TSTRING020(85)
  353.                     Goto LABEL012
  354.                 Endif
  355.                 If ((STRING056 < String(Month(Date()))) && (STRING057 <= String(Right(Year(Date()), 2)))) Then
  356.                     PrintLn "   ", TSTRING020(85)
  357.                     Goto LABEL012
  358.                 Endif
  359.                 If ((STRING056 >= String(Month(Date()))) && (STRING057 <= String(Right(Year(Date()), 2)))) Then
  360.                     Goto LABEL013
  361.                 Endif
  362.                 If (STRING050 == "") Goto LABEL012
  363.                 :LABEL013
  364.                 PrintLn 
  365.                 If (Psa(3) && (U_Addr(0) <> "")) STRING044 = U_Addr(0)
  366.                 InputStr "     " + TSTRING020(62) + " ", STRING044, 14, 45, Mask_Ascii(), 2 + 4 + 256
  367.                 If (STRING044 == "") Then
  368.                     PrintLn "          " + TSTRING020(63)
  369.                     Goto LABEL013
  370.                 Endif
  371.                 :LABEL014
  372.                 PrintLn 
  373.                 If (Psa(3) && (U_Addr(2) <> "")) STRING041 = U_Addr(2)
  374.                 InputStr "     " + TSTRING020(64) + " ", STRING041, 14, 35, Mask_Ascii(), 2 + 4 + 256
  375.                 If (STRING041 == "") Goto LABEL014
  376.                 :LABEL015
  377.                 PrintLn 
  378.                 If (Psa(3) && (U_Addr(3) <> "")) STRING042 = U_Addr(3)
  379.                 InputStr "     " + TSTRING020(65) + " ", STRING042, 14, 2, Mask_Ascii(), 2 + 4 + 256
  380.                 If (STRING042 == "") Goto LABEL015
  381.                 :LABEL016
  382.                 PrintLn 
  383.                 If (Psa(3) && (U_Addr(4) <> "")) STRING043 = U_Addr(4)
  384.                 InputStr "     " + TSTRING020(66) + " ", STRING043, 14, 10, Mask_Ascii(), 2 + 4 + 256
  385.                 If (STRING043 == "") Goto LABEL016
  386.                 :LABEL017
  387.                 PrintLn 
  388.                 If (Psa(3) && (U_Addr(5) <> "")) STRING051 = U_Addr(5)
  389.                 InputStr "     " + TSTRING020(67) + " ", STRING051, 14, 10, Mask_Ascii(), 2 + 4 + 256
  390.                 If (STRING051 == "") Goto LABEL017
  391.                 :LABEL018
  392.                 PrintLn 
  393.                 If (U_HVPhone <> "") STRING039 = U_HVPhone
  394.                 InputStr "     " + TSTRING020(68) + " ", STRING039, 14, 20, "0123456789-", 2 + 4 + 256
  395.                 If (STRING039 == "") Goto LABEL018
  396.                 :LABEL019
  397.                 PrintLn 
  398.                 If (U_BDPhone <> "") STRING040 = U_BDPhone
  399.                 InputStr "     " + TSTRING020(69) + "@X07 ", STRING040, 14, 20, "0123456789-", 2 + 4 + 256
  400.                 If (STRING040 == "") Goto LABEL019
  401.                 Newlines 3
  402.                 :LABEL020
  403.                 PrintLn "                         ", TSTRING020(1)
  404.                 PrintLn "                         ", TSTRING020(2)
  405.                 PrintLn "                         ", TSTRING020(3)
  406.                 PrintLn 
  407.                 If (STRING011 == "Y") Then
  408.                     INTEGER016 = "1"
  409.                 Endif
  410.                 INTEGER017 = 1
  411.                 TREAL006(INTEGER017) = TMONEY003(INTEGER017)
  412.                 PrintLn "   @X09╔══════════════════════════════════════════════════════════════════════╗@X07"
  413.                 For INTEGER017 = 1 To INTEGER016
  414.                     PrintLn "@X09   ║@X0F ", INTEGER017, "@X0E) @X0E- ", TINTEGER025(INTEGER017), "@POS:16@@X0F", STRING022, "@POS:30@", TSTRING020(82), "@X0F ", TINTEGER005(INTEGER017), "@POS:46@", TSTRING020(83), " @X07 ", TINTEGER003(INTEGER017), "@X0C   ", TSTRING020(5), " @X0A ", TMONEY003(INTEGER017), "@X09@POS:75@║ @X07"
  415.                 Next
  416.                 PrintLn "   @X09╚══════════════════════════════════════════════════════════════════════╝@X07"
  417.                 PrintLn 
  418.                 InputStr "                  " + TSTRING020(6) + " @X0F(@X0E1 - " + String(INTEGER016) + "@X0F) " + TSTRING020(7) + " @X07", STRING010, 11, 1, "0123456789Qq", 2 + 4 + 8 + 256
  419.                 If (STRING010 == "Q") Goto LABEL035
  420.                 If ((STRING010 < 1) || (STRING010 > INTEGER016)) Goto LABEL020
  421.                 INTEGER017 = STRING010
  422.                 Gosub LABEL021
  423.                 Gosub LABEL022
  424.                 Goto LABEL035
  425.                 :LABEL021
  426.                 PrintLn 
  427.                 PrintLn "          @X0F    ", TSTRING020(13), "@X0E ", STRING010, " @X0F", TSTRING020(14), " @X0C", TINTEGER025(INTEGER017), " @X0B", STRING022, "@X0F ", TSTRING020(15), "@X0A ", TMONEY003(INTEGER017), "@X07"
  428.                 PrintLn 
  429.                 InputStr "                            " + TSTRING020(16) + " ", STRING009, 10, 1, "", 2 + 4 + 8 + 16384
  430.                 If (STRING009 == "N") Goto LABEL035
  431.                 If (STRING009 == "Y") Then
  432.                 Endif
  433.                 Return
  434.                 :LABEL022
  435.                 PrintLn 
  436.                 PrintLn 
  437.                 PrintLn "@X0F                      ", TSTRING020(24), " ", Account(0), "@X07"
  438.                 PrintLn 
  439.                 STRING004 = Account(0) + TINTEGER025(INTEGER017)
  440.                 If (STRING033 == "Y") Then
  441.                     GetUser
  442.                     INTEGER008 = TINTEGER025(INTEGER017)
  443.                     Account 0, INTEGER008
  444.                     U_Sec = TINTEGER003(INTEGER017)
  445.                     INTEGER029 = TINTEGER004(INTEGER017)
  446.                     Account 17, INTEGER029
  447.                     DATE003 = Date() + TINTEGER005(INTEGER017)
  448.                     U_ExpDate = DATE003
  449.                     U_ExpSec = TINTEGER028(INTEGER017)
  450.                     If (STRING052 == "N") PutUser
  451.                     Goto LABEL023
  452.                 Endif
  453.                 PrintLn 
  454.                 PrintLn "      ", TSTRING020(47)
  455.                 PrintLn 
  456.             Endif
  457.             :LABEL023
  458.             PrintLn "                      ", TSTRING020(84), " ", TINTEGER003(INTEGER017)
  459.             PrintLn 
  460.             PrintLn "@X0F                 " + TSTRING020(25), " ", TINTEGER025(INTEGER017), " ", TSTRING020(26)
  461.             PrintLn 
  462.             PrintLn "             @X0F   ", TSTRING020(27), " ", Account(0), "@X07"
  463.             PrintLn 
  464.             PrintLn "                ", TSTRING020(28), " ", Strip(Left(CCType(STRING002), 20), " "), " ", TSTRING020(29), "@X0A ", TMONEY003(INTEGER017), "@X07"
  465.             DATE002 = Date() + TINTEGER005(INTEGER017)
  466.             PrintLn 
  467.             PrintLn "                       ", TSTRING020(76), " ", DATE002
  468.             PrintLn 
  469.             If (REAL001 <> "0") Then
  470.                 REAL002 = REAL001 / 100
  471.                 REAL003 = (TMONEY003(INTEGER017) * REAL002) / 100
  472.                 INTEGER031 = Len(REAL003)
  473.                 INTEGER032 = 1
  474.                 INTEGER033 = InStr(REAL003, ".")
  475.                 INTEGER006 = INTEGER033 + 2
  476.                 INTEGER007 = INTEGER033 + 3
  477.                 If (INTEGER007 >= "5") Then
  478.                     REAL008 = ".01"
  479.                     REAL007 = Left(REAL003, INTEGER006) + REAL008
  480.                 Endif
  481.             Endif
  482.             MONEY002 = REAL007 * 100 + REAL008
  483.             PrintLn "                      @X0E", REAL001, "%@X07 ", TSTRING020(77), " ", MONEY002
  484.             PrintLn 
  485.             MONEY004 = REAL005 * 100
  486.             If (REAL005 <> "0") PrintLn "                           ", TSTRING020(78) , " ", MONEY004
  487.             PrintLn 
  488.             TREAL006(INTEGER017) = TMONEY003(INTEGER017) / 100
  489.             REAL005 = String(REAL005)
  490.             REAL004 = TREAL006(INTEGER017) + REAL007 + REAL005
  491.             INTEGER033 = InStr(REAL004, ".")
  492.             INTEGER031 = Len(REAL004)
  493.             INTEGER006 = INTEGER033 + 2
  494.             MONEY001 = Left(REAL004, 6)
  495.             PrintLn "                           ", TSTRING020(79), " ", MONEY001
  496.             PrintLn 
  497.             If (STRING028 == "TAX") End
  498.             FPutLn 1, TSTRING020(17), " ", Date(), " at ", Time()
  499.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(18)))
  500.             FPutLn 1, " " + TSTRING020(18) + Space(INTEGER010) + STRING003
  501.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(19)))
  502.             FPutLn 1, " " + TSTRING020(19) + Space(INTEGER010) + FmtCC(STRING002)
  503.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(20)))
  504.             FPutLn 1, " " + TSTRING020(20) + Space(INTEGER010), STRING050
  505.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(21)))
  506.             FPutLn 1, " " + TSTRING020(21) + Space(INTEGER010) + U_Name()
  507.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(70)))
  508.             FPutLn 1, " " + TSTRING020(70) + Space(INTEGER010) + STRING044
  509.             INTEGER010 = 36 - Len(StripAtx(TSTRING020(71))) + Len(StripAtx(TSTRING020(72)))
  510.             FPutLn 1, " " + TSTRING020(71) + " " + TSTRING020(72) + Space(INTEGER010) + STRING041 + ", " + STRING042 + " ," + STRING043
  511.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(73)))
  512.             FPutLn 1, " " + TSTRING020(73) + Space(INTEGER010) + U_Addr(5)
  513.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(74)))
  514.             FPutLn 1, " " + TSTRING020(74) + Space(INTEGER010) + STRING039
  515.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(75)))
  516.             FPutLn 1, " " + TSTRING020(75) + Space(INTEGER010) + STRING040
  517.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(22)))
  518.             FPutLn 1, " " + TSTRING020(22) + Space(INTEGER010) + "(" + STRING010 + ")" + "  ", String(TINTEGER025(INTEGER017))
  519.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(23)))
  520.             FPutLn 1, " " + TSTRING020(23) + Space(INTEGER010) + String(CCType(STRING002)) + "  " + String(TMONEY003(INTEGER017))
  521.             If (REAL001 <> "0") INTEGER010 = 43 - Len(StripAtx(TSTRING020(77)))
  522.             FPutLn 1, " " + StripAtx(TSTRING020(77)) + Space(INTEGER010) + String(MONEY002)
  523.             If (REAL005 <> "0") INTEGER010 = 43 - Len(StripAtx(TSTRING020(22)))
  524.             FPutLn 1, " " + StripAtx(TSTRING020(78)) + Space(INTEGER010) + String(MONEY004)
  525.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(79)))
  526.             FPutLn 1, " " + StripAtx(TSTRING020(79)) + Space(INTEGER010) + String(MONEY001)
  527.             If (STRING052 == "Y") FPutLn 1, "  TEST  TEST  TEST  TEST  TEST  TEST  TEST  TEST  "
  528.             FPutLn 1, "**********************************************************"
  529.             FClose 1
  530.             PrintLn " "
  531.             If (STRING049 == "Y") Message 0, "SYSOP", U_Name() , "CREDITS", "R", 0, 0, 0, PPEPath() + "credits.txt"
  532.             If (CCType(STRING002) == "VISA") Then
  533.                 FAppend 6, PPEPath() + "credits.vis", 2, 0
  534.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  535.                 Goto LABEL024
  536.             Endif
  537.             If (CCType(STRING002) == "MASTERCARD") Then
  538.                 FAppend 6, PPEPath() + "credits.mas", 2, 0
  539.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  540.                 Goto LABEL024
  541.             Endif
  542.             If (CCType(STRING002) == "CARTE BLANCHE") Then
  543.                 FAppend 6, PPEPath() + "credits.car", 2, 0
  544.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  545.                 Goto LABEL024
  546.             Endif
  547.             If (CCType(STRING002) == "DISCOVER") Then
  548.                 FAppend 6, PPEPath() + "credits.dis", 2, 0
  549.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  550.                 Goto LABEL024
  551.             Endif
  552.             If (CCType(STRING002) == "DINERS CLUB") Then
  553.                 FAppend 6, PPEPath() + "credits.din", 2, 0
  554.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  555.                 Goto LABEL024
  556.             Endif
  557.             If (CCType(STRING002) == "OPTIMA") Then
  558.                 FAppend 6, PPEPath() + "credits.opt", 2, 0
  559.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  560.                 Goto LABEL024
  561.             Endif
  562.             If (CCType(STRING002) == "AMERICAN EXPRESS") Then
  563.                 FAppend 6, PPEPath() + "credits.ame", 2, 0
  564.                 FPutLn 6, STRING002, " ", STRING050, " ", MONEY001
  565.             Endif
  566.             :LABEL024
  567.             FClose 6
  568.             FAppend 4, STRING025 + "cr" + String(U_RecNum(U_Name())) + ".inv", 2, 0
  569.             STRING029 = STRING025 + "cr" + String(U_RecNum(U_Name())) + ".inv"
  570.             STRING030 = CCType(STRING002)
  571.             FPutLn 4, " "
  572.             FPutLn 4, "             ", TSTRING020(42), " ", STRING008
  573.             FPutLn 4, "                             ", STRING013
  574.             FPutLn 4, " "
  575.             FPutLn 4, "     ╔════════════════════════════════════════════════════════════════╗"
  576.             FPutLn 4, "     ║           " + TSTRING020(48) + " " + String(Date()) + "  " + TSTRING020(49) + " " + String(Time()) + "             ║"
  577.             FPutLn 4, "     ╚════════════════════════════════════════════════════════════════╝"
  578.             FPutLn 4, "      " + TSTRING020(50) + "  " + STRING008
  579.             INTEGER010 = 43 - Len(StripAtx(TSTRING020(70)))
  580.             FPutLn 4, "      " + TSTRING020(70) + "   " + STRING053
  581.             FPutLn 4, "      " + TSTRING020(71) + "      " + STRING054
  582.             FPutLn 4, "      " + TSTRING020(51) + "     " + STRING017
  583.             FPutLn 4, "     ──────────────────────────────────────────────────────────────────"
  584.             FPutLn 4, "      " + TSTRING020(80) + "       " + U_Name()
  585.             FPutLn 4, "                        " + U_Addr(0)
  586.             FPutLn 4, "                       c" + U_Addr(2) + "," + U_Addr(3) + "  " + U_Addr(4) + "  " + U_Addr(5)
  587.             FPutLn 4, "     ──────────────────────────────────────────────────────────────────"
  588.             FPutLn 4, "      ", TSTRING020(53), "    ", STRING030, "              ", TSTRING020(54), "  ", STRING050
  589.             FPutLn 4, "      ", TSTRING020(55), "  ", STRING002
  590.             FPutLn 4, " "
  591.             FPutLn 4, "      ", TSTRING020(56), "                   ", TINTEGER025(INTEGER017)
  592.             FPutLn 4, "      ", TSTRING020(81), "                    ", TMONEY003(INTEGER017)
  593.             If (REAL001 <> "0") FPutLn 4, "      ", TSTRING020(77) , "             ", REAL003
  594.             If (REAL005 <> "0") FPutLn 4, "      ", TSTRING020(78) , "                  ", REAL005
  595.             FPutLn 4, "      ", TSTRING020(57), "                  ", REAL004
  596.             FPutLn 4, "     ──────────────────────────────────────────────────────────────────"
  597.             FPutLn 4, ""
  598.             FPutLn 4, ""
  599.             FPutLn 4, ""
  600.             FPutLn 4, ""
  601.             FPutLn 4, ""
  602.             PrintLn "          ", TSTRING020(30)
  603.             PrintLn 
  604.             InputStr "              @X0F" + TSTRING020(58), STRING032, 10, 1, "", 2 + 4 + 8 + 256 + 16384
  605.             If (STRING032 == "N") Goto LABEL035
  606.             If (STRING032 == "Y") Then
  607.                 PrintLn 
  608.                 PrintLn "                 " + TSTRING020(59)
  609.                 Gosub LABEL033
  610.             Endif
  611.             PrintLn 
  612.             PrintLn "          ", TSTRING020(30)
  613.             Goto LABEL035
  614.             Cls
  615.             PrintLn 
  616.             PrintLn "@POS:23@ @X0F░▒▓█ @X0ACREDITS.PPE  @X07v" + STRING018 + " @X0F█▓▒░ @X07"
  617.             PrintLn 
  618.             PrintLn "                           ░▒▓█ by DM Soft █▓▒░"
  619.             PrintLn 
  620.             Return
  621.             STRING017 = STRING007
  622.             STRING014 = Strip(STRING008, " ")
  623.             If (STRING006 == "000000") Then
  624.                 STRING011 = "Y"
  625.                 Return
  626.             Endif
  627.             For INTEGER019 = 1 To 25
  628.                 STRING015 = Mid(STRING014, INTEGER019, 1)
  629.                 INTEGER018 = Asc(STRING015)
  630.                 INTEGER018 = INTEGER018 - 3
  631.                 INTEGER020 = INTEGER020 + INTEGER018 + 8
  632.             Next
  633.             For INTEGER019 = 1 To 25
  634.                 STRING015 = Mid(STRING017, INTEGER019, 1)
  635.                 INTEGER024 = Asc(STRING015)
  636.                 INTEGER024 = INTEGER024
  637.                 INTEGER021 = INTEGER021 + INTEGER024
  638.             Next
  639.             STRING016 = Lower(PPEName())
  640.             STRING016 = Strip(STRING016, " ")
  641.             For INTEGER019 = 1 To 8
  642.                 STRING015 = Mid(STRING016, INTEGER019, 1)
  643.                 INTEGER023 = Asc(STRING015)
  644.                 INTEGER023 = INTEGER023 - 6
  645.                 INTEGER022 = INTEGER022 + INTEGER023
  646.             Next
  647.             INTEGER020 = INTEGER020 + INTEGER021 + INTEGER022
  648.             INTEGER020 = (INTEGER020 * Len(Strip(STRING014, " "))) * 9
  649.             If (INTEGER020 == STRING006) Goto LABEL025
  650.             If (INTEGER020 <> STRING006) Then
  651.                 STRING011 = "Y"
  652.                 Return
  653.             Endif
  654.         Endif
  655.         :LABEL025
  656.         STRING012 = "@X0B" + STRING008 + "@X0A SYSOP:@X0F " + STRING017
  657.         PrintLn " @X0E╔════════════════════════════════════════════════════════════════════════════╗@X07"
  658.         PrintLn " @X0E║ @POS:10@@X0FThis @X0APPE registered @X0Fto " + STRING012 + "@POS:79@@X0E║@X07"
  659.         PrintLn " @X0E║                         @X0D@X0FPhone:@X0C ", STRING013, "@X0E@POS:79@║@X07"
  660.         PrintLn " @X0E╚════════════════════════════════════════════════════════════════════════════╝@X07"
  661.         Goto LABEL004
  662.         :LABEL026
  663.         Gosub LABEL032
  664.         :LABEL027
  665.         Cls
  666.         STRING027 = ""
  667.         Newlines 1
  668.         PrintLn "                  @X0BCredits.ppe v@X0F" + STRING018 + " @X0EConfiguation Editor@X07 "
  669.         PrintLn "                               Page 1 of 4"
  670.         PrintLn 
  671.         PrintLn " @X0E(@X0FA@X0E) @X07Bulletin Board Name....................@X0E[@X0B" + STRING008 + "@POS:76@@X0E]@X07"
  672.         PrintLn " @X0E(@X0FB@X0E) @X07Bulletin Board address.................@X0E[@X0B" + STRING053 + "@POS:76@@X0E]@X07"
  673.         PrintLn " @X0E(@X0FC@X0E) @X07Bulletin Board city, state, zip........@X0E[@X0B" + STRING054 + "@POS:76@@X0E]@X07"
  674.         PrintLn " @X0E(@X0FD@X0E) @X07Sysops full name.......................@X0E[@X0B" + STRING007 + "@X0E@POS:76@]@X07"
  675.         PrintLn " @X0E(@X0FE@X0E) @X07Phone number of your BBS...............@X0E[@X0B" + STRING013 + "@X0E@POS:50@]@X07"
  676.         PrintLn " @X0E(@X0FF@X0E)@X07 Registration number....................@X0E[@X0B" + STRING006 + "@POS:52@@X0E]@X07"
  677.         PrintLn " @X0E(@X0FG@X0E) @X07Currency, Units or Credits@X07.............@X0E[@X0B" + STRING022 + "@X0E@POS:48@]@X07"
  678.         PrintLn " @X0E(@X0FH@X0E) @X07Levels of credit access................@X0E[@X0B" + String(INTEGER016) + "@X0E@POS:48@]@X07"
  679.         PrintLn " @X0E(@X0FI@X0E) @X07Path to invoice files..................@X0E[@X0B" + STRING025 + "@X0E@POS:76@]@X07"
  680.         PrintLn " @X0E[@X0FJ@X0E] @X07Raise Security immediately.............@X0E[@X0B", STRING033, "@X0E@POS:35@]@X07"
  681.         PrintLn " @X0E[@X0FK@X0E] @X07Change Users Expiration date ..........@X0E[@X0B", STRING045, "@POS:35@@X0E]@X07"
  682.         PrintLn " @X0E[@X0FL@X0E] @X07Allow American Express credit card.....@X0E[@X0B", STRING046, "@POS:35@@X0E]@X07"
  683.         PrintLn " @X0E[@X0FM@X0E] @X07Allow Discover credit card.............@X0E[@X0B", STRING047, "@POS:35@@X0E]@X07"
  684.         PrintLn " @X0E(@X0FN@X0E) @X07Send message to sysop after purchase...@X0E[@X0B", STRING049, "@X0E]@X07"
  685.         PrintLn " @X0E(@X0FO@X0E) @X07Percent of sales tax (0 if no tax).....@X0E[@X0B", REAL001, "@POS:50@@X0E]@X07"
  686.         PrintLn " @X0E(@X0FP@X0E) @X07Handling Charge (credit card surcharge)@X0E[@X0B", REAL005, "@X0E@POS:50@]@X07"
  687.         PrintLn 
  688.         InputStr "@X0F Please @X0Bchoose @X0Fa letter to @X0Echange [@X0Fe@X0EX@X0F)it,(@X0E!@X0F) to Save,@X0E +@X0F next screen@X0E]@X07", STRING027, 14, 1, Mask_Ascii(), 4 + 2 + 8 + 64
  689.         If (STRING027 == "!") Goto LABEL031
  690.         If (STRING027 == "") Goto LABEL035
  691.         If (STRING027 == "+") Goto LABEL028
  692.         If (STRING027 == "A") Then
  693.             InputStr " What is the name of your BBS ", STRING008, 11, 30, Mask_Ascii(), 2 + 4
  694.             Goto LABEL027
  695.         Endif
  696.         If (STRING027 == "B") Then
  697.             InputStr " What is your street mailing address( for the BBS) ", STRING053, 11, 30, Mask_Ascii(), 2 + 4
  698.             Goto LABEL027
  699.         Endif
  700.         If (STRING027 == "C") Then
  701.             InputStr " What is your mailing city, state, zip (for the BBS) ", STRING054, 11, 30, Mask_Ascii(), 2 + 4
  702.             Goto LABEL027
  703.         Endif
  704.         If (STRING027 == "D") Then
  705.             InputStr " What is the Sysops name ", STRING007, 11, 25, Mask_Ascii(), 2 + 4 + 128
  706.             Goto LABEL027
  707.         Endif
  708.         If (STRING027 == "E") Then
  709.             InputStr " What is the BBS phone number ", STRING013, 11, 12, Mask_Ascii(), 2 + 4 + 8 + 128
  710.             Goto LABEL027
  711.         Endif
  712.         If (STRING027 == "F") Then
  713.             InputStr " What is the registration number (leave 000000 if unreg) ", STRING006, 11, 8, Mask_Num(), 2 + 4 + 8
  714.             Goto LABEL027
  715.         Endif
  716.         If (STRING027 == "G") Then
  717.             InputStr " What are the values measured in (credits, units money) ", STRING022, 11, 12, Mask_Ascii(), 2 + 4 + 8
  718.             Goto LABEL027
  719.         Endif
  720.         If (STRING027 == "H") Then
  721.             InputStr " How many levels (choices will you give the user ", INTEGER016, 11, 3, Mask_Num(), 2 + 4 + 8
  722.             Goto LABEL027
  723.         Endif
  724.         If (STRING027 == "I") Then
  725.             InputStr " What is the path where the invoices are stored ", STRING025, 11, 35, Mask_Ascii(), 2 + 4 + 8
  726.             PrintLn 
  727.             PrintLn "   The directory will be created for you if it doesn't exist"
  728.             PrintLn 
  729.             Wait
  730.             Shell 1, INTEGER026, "md " + STRING025, ""
  731.             Wait
  732.             Goto LABEL027
  733.         Endif
  734.         If (STRING027 == "J") Then
  735.             InputStr " Do you want to raise users security immediately ", STRING033, 11, 1, "", 2 + 4 + 8 + 16384
  736.             Goto LABEL027
  737.         Endif
  738.         If (STRING027 == "K") Then
  739.             InputStr " What do you want to change users expired security ", STRING045, 11, 1, "", 2 + 4 + 8 + 16384
  740.             Goto LABEL027
  741.         Endif
  742.         If (STRING027 == "L") Then
  743.             InputStr " Do you except American Express credit cards ", STRING046, 11, 1, "", 2 + 4 + 8 + 16384
  744.             Goto LABEL027
  745.         Endif
  746.         If (STRING027 == "M") Then
  747.             InputStr " Do you except Discover credit cards ", STRING047, 11, 1, "", 2 + 4 + 8 + 16384
  748.             Goto LABEL027
  749.         Endif
  750.         If (STRING027 == "N") Then
  751.             InputStr " Do you want to receive a message about users credit purchase ", STRING049, 11, 8, "", 2 + 4 + 8 + 16384
  752.             Goto LABEL027
  753.         Endif
  754.         If (STRING027 == "O") Then
  755.             InputStr " @X07What 7f tax do you want (8.2 is 8.2%)(enter 0 if none) ", REAL001, 11, 8, Mask_Ascii(), 2 + 4 + 0
  756.             Goto LABEL027
  757.         Endif
  758.         If (STRING027 == "P") Then
  759.             InputStr " What is the handling charge (cc surcharge)(enter 0 if none) ", REAL005, 11, 8, "$0123456789.", 2 + 4 + 0
  760.             Goto LABEL027
  761.         Endif
  762.         Goto LABEL027
  763.         :LABEL028
  764.         Cls
  765.         STRING027 = ""
  766.         Newlines 1
  767.         PrintLn " @X0E(@X0FA@X0E) @X07First Level (units, credits)...........@X0E[@X0B", TINTEGER025(1), "@X0E@POS:50@]@X07"
  768.         PrintLn " @X0E(@X0FB@X0E) @X07First Level Currency value.............@X0E[@X0B", TMONEY003(1), "@X0E@POS:52@]@X07"
  769.         PrintLn " @X0E(@X0FC@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(1), "@X0E@POS:50@]@X07"
  770.         PrintLn " @X0E(@X0FD@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(1), "@X0E@POS:50@]@X07"
  771.         PrintLn " @X0E(@X0FE@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(1), "@X0E@POS:50@]@X07     @X0ACREDITS.ppe v", STRING018, "@X07"
  772.         PrintLn " @X0E(@X0FF@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(1), "@X0E@POS:50@]@X07"
  773.         PrintLn " @X0E(@X0FG@X0E) @X07Second level (units or credits)........@X0E[@X0B", TINTEGER025(2), "@POS:50@@X0E]@X07       Configuration"
  774.         PrintLn " @X0E(@X0FH@X0E) @X07Second Level Currency Value............@X0E[@X0B", TMONEY003(2), "@X0E@POS:52@]@X07@X07"
  775.         PrintLn " @X0E(@X0FI@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(2), "@X0E@POS:50@]@X07"
  776.         PrintLn " @X0E(@X0FJ@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(2), "@X0E@POS:50@]@X07@X07          Editor"
  777.         PrintLn " @X0E(@X0FK@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(2), "@X0E@POS:50@]@X07"
  778.         PrintLn " @X0E(@X0FL@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(2), "@X0E@POS:50@]@X07         Page 2 of 4"
  779.         PrintLn " @X0E(@X0FM@X0E) @X07Third Level (units or credits).........@X0E[@X0B", TINTEGER025(3), "@X0E@POS:50@]@X07"
  780.         PrintLn " @X0E(@X0FN@X0E) @X07Third Level Currency Value............ @X0E[@X0B", TMONEY003(3), "@POS:52@@X0E]@X07"
  781.         PrintLn " @X0E(@X0FO@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(3), "@X0E@POS:50@]@X07"
  782.         PrintLn " @X0E(@X0FP@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(3), "@X0E@POS:50@]@X07@X07"
  783.         PrintLn " @X0E(@X0FQ@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(3), "@X0E@POS:50@]@X07"
  784.         PrintLn " @X0E(@X0FR@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(3), "@X0E@POS:50@]@X07"
  785.         InputStr "@X0F Please @X0Bchoose @X0Fa letter to @X0Echange [@X0Fe@X0EX@X0F)it,(@X0E!@X0F) to Save,@X0E +@X0F next screen@X0E]@X07", STRING027, 14, 1, Mask_Ascii(), 4 + 2 + 8 + 64
  786.         If (STRING027 == "!") Goto LABEL031
  787.         If (STRING027 == "") Goto LABEL035
  788.         If (STRING027 == "X") Goto LABEL035
  789.         If (STRING027 == "+") Goto LABEL029
  790.         If (STRING027 == "-") Goto LABEL027
  791.         If (STRING027 == "A") Then
  792.             InputStr " What is the first level (value) of credits users may purchase ", TINTEGER025(1), 11, 5, Mask_Num(), 2 + 4 + 8
  793.             Goto LABEL028
  794.         Endif
  795.         If (STRING027 == "B") Then
  796.             InputStr " What is cost of level one purchase ", TMONEY003(1), 11, 7, Mask_Ascii(), 2 + 4 + 8
  797.             Goto LABEL028
  798.         Endif
  799.         If (STRING027 == "C") Then
  800.             InputStr " What security level to raise level on users ", TINTEGER003(1), 11, 5, Mask_Num(), 2 + 4 + 8
  801.             Goto LABEL028
  802.         Endif
  803.         If (STRING027 == "D") Then
  804.             InputStr " What security level at which to set expired users (level 1) ", TINTEGER028(1), 11, 5, Mask_Num(), 2 + 4 + 8
  805.             Goto LABEL028
  806.         Endif
  807.         If (STRING027 == "E") Then
  808.             InputStr "  Security level to set when user has 0 credits", TINTEGER004(1), 11, 4, Mask_Num(), 2 + 4 + 8
  809.             Goto LABEL028
  810.         Endif
  811.         If (STRING027 == "F") Then
  812.             InputStr " Number of days before expiration of level one user ", TINTEGER005(1), 11, 5, Mask_Num(), 2 + 4 + 8
  813.             Goto LABEL028
  814.         Endif
  815.         If (STRING027 == "G") Then
  816.             InputStr "What is the second level (value) of credits users may purchase ", TINTEGER025(2), 11, 5, Mask_Num(), 2 + 4 + 8
  817.             Goto LABEL028
  818.         Endif
  819.         If (STRING027 == "H") Then
  820.             InputStr " What is the cost of level two purchase ", TMONEY003(2), 14, 7, Mask_Ascii(), 2 + 4 + 8
  821.             Goto LABEL028
  822.         Endif
  823.         If (STRING027 == "I") Then
  824.             InputStr " What security level to raise level on users ", TINTEGER003(2), 11, 5, Mask_Num(), 2 + 4 + 8
  825.             Goto LABEL028
  826.         Endif
  827.         If (STRING027 == "J") Then
  828.             InputStr " What security level to drop expired users on level three purchase ", TINTEGER028(2), 11, 5, Mask_Num(), 2 + 4 + 8
  829.             Goto LABEL028
  830.         Endif
  831.         If (STRING027 == "K") Then
  832.             InputStr "  Security level to set when user has 0 credits", TINTEGER004(2), 11, 4, Mask_Num(), 2 + 4 + 8
  833.             Goto LABEL028
  834.         Endif
  835.         If (STRING027 == "L") Then
  836.             InputStr " Number of days before expiration of level one user ", TINTEGER005(2), 11, 5, Mask_Num(), 2 + 4 + 8
  837.             Goto LABEL028
  838.         Endif
  839.         If (STRING027 == "M") Then
  840.             InputStr " What is the third level (value) of credits users may purchase ", TINTEGER025(3), 11, 5, Mask_Num(), 2 + 4 + 8
  841.             Goto LABEL028
  842.         Endif
  843.         If (STRING027 == "N") Then
  844.             InputStr " What is the cost of level three purchase ", TMONEY003(3), 11, 7, Mask_Ascii(), 2 + 4 + 8
  845.             Goto LABEL028
  846.         Endif
  847.         If (STRING027 == "O") Then
  848.             InputStr " What security level to raise level on users ", TINTEGER003(3), 11, 5, Mask_Num(), 2 + 4 + 8
  849.             Goto LABEL028
  850.         Endif
  851.         If (STRING027 == "P") Then
  852.             InputStr " What security level to drop expired users on level three purchase ", TINTEGER028(3), 11, 5, Mask_Num(), 2 + 4 + 8
  853.             Goto LABEL028
  854.         Endif
  855.         If (STRING027 == "Q") Then
  856.             InputStr "  Security level to set when user has 0 credits", TINTEGER004(3), 11, 4, Mask_Num(), 2 + 4 + 8
  857.             Goto LABEL028
  858.         Endif
  859.         If (STRING027 == "R") Then
  860.             InputStr " Number of days before expiration of level one user ", TINTEGER005(3), 11, 5, Mask_Num(), 2 + 4 + 8
  861.             Goto LABEL028
  862.         Endif
  863.         Goto LABEL028
  864.         :LABEL029
  865.         Cls
  866.         STRING027 = ""
  867.         Newlines 1
  868.         PrintLn " @X0E(@X0FA@X0E) @X07Fourth Level (units, credits)..........@X0E[@X0B", TINTEGER025(4), "@X0E@POS:50@]@X07"
  869.         PrintLn " @X0E(@X0FB@X0E) @X07Fourth Currency value..................@X0E[@X0B", TMONEY003(4), "@X0E@POS:52@]@X07@X07"
  870.         PrintLn " @X0E(@X0FC@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(4), "@X0E@POS:50@]@X07"
  871.         PrintLn " @X0E(@X0FD@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(4), "@X0E@POS:50@]@X07"
  872.         PrintLn " @X0E(@X0FE@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(4), "@X0E@POS:50@]@X07@X0A    CREDITS.ppe v", STRING018, "@X07"
  873.         PrintLn " @X0E(@X0FF@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(4), "@X0E@POS:50@]@X07"
  874.         PrintLn " @X0E(@X0FG@X0E) @X07Fifth level (units or credits).........@X0E[@X0B", TINTEGER025(5), "@POS:50@@X0E]@X07     Configuration"
  875.         PrintLn " @X0E(@X0FH@X0E) @X07Fifth Level Currency Value.............@X0E[@X0B", TMONEY003(5), "@X0E@POS:52@]@X07@X07"
  876.         PrintLn " @X0E(@X0FI@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(5), "@X0E@POS:50@]@X07       Editor"
  877.         PrintLn " @X0E(@X0FJ@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(5), "@X0E@POS:50@]@X07"
  878.         PrintLn " @X0E(@X0FK@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(5), "@X0E@POS:50@]      @X07 Page 3 of 4@X07"
  879.         PrintLn " @X0E(@X0FL@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(5), "@X0E@POS:50@]@X07"
  880.         PrintLn " @X0E(@X0FM@X0E) @X07Sixth Level (units or credits).........@X0E[@X0B", TINTEGER025(6), "@X0E@POS:50@]@X07"
  881.         PrintLn " @X0E(@X0FN@X0E) @X07Sixth Level Currency Value............ @X0E[@X0B", TMONEY003(6), "@POS:52@@X0E]@X07"
  882.         PrintLn " @X0E(@X0FO@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(6), "@X0E@POS:50@]@X07"
  883.         PrintLn " @X0E(@X0FP@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(6), "@X0E@POS:50@]@X07@X07"
  884.         PrintLn " @X0E(@X0FQ@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(6), "@X0E@POS:50@]@X07"
  885.         PrintLn " @X0E(@X0FR@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(6), "@X0E@POS:50@]@X07"
  886.         PrintLn 
  887.         InputStr "@X0F @X0BChoose @X0Fan item to @X0Echange [@X0F(@X0E!@X0F) to Save,@X0EC/R@X0F to abort@X0E + @X0Fnext screen]@X07", STRING027, 14, 1, Mask_Ascii(), 4 + 2 + 8 + 64
  888.         If (STRING027 == "!") Goto LABEL031
  889.         If (STRING027 == "") Goto LABEL035
  890.         If (STRING027 == "X") Goto LABEL035
  891.         If (STRING027 == "+") Goto LABEL030
  892.         If (STRING027 == "-") Goto LABEL028
  893.         If (STRING027 == "A") Then
  894.             InputStr " What is the fourth level (value) of credits users may purchase ", TINTEGER025(4), 11, 5, Mask_Num(), 2 + 4 + 8
  895.             Goto LABEL029
  896.         Endif
  897.         If (STRING027 == "B") Then
  898.             InputStr " What is cost of level four purchase ", TMONEY003(4), 11, 7, Mask_Ascii(), 2 + 4 + 8
  899.             Goto LABEL029
  900.         Endif
  901.         If (STRING027 == "C") Then
  902.             InputStr " What security level to raise level on users ", TINTEGER003(4), 11, 5, Mask_Num(), 2 + 4 + 8
  903.             Goto LABEL029
  904.         Endif
  905.         If (STRING027 == "D") Then
  906.             InputStr " What security level at which to set expired users (level 4) ", TINTEGER028(4), 11, 5, Mask_Num(), 2 + 4 + 8
  907.             Goto LABEL029
  908.         Endif
  909.         If (STRING027 == "E") Then
  910.             InputStr "  Security level to set when user has 0 credits", TINTEGER004(4), 11, 4, Mask_Num(), 2 + 4 + 8
  911.             Goto LABEL029
  912.         Endif
  913.         If (STRING027 == "F") Then
  914.             InputStr " Number of days before expiration of level four users ", TINTEGER005(4), 11, 5, Mask_Num(), 2 + 4 + 8
  915.             Goto LABEL029
  916.         Endif
  917.         If (STRING027 == "G") Then
  918.             InputStr "What is the five level (value) of credits users may purchase ", TINTEGER025(5), 11, 5, Mask_Num(), 2 + 4 + 8
  919.             Goto LABEL029
  920.         Endif
  921.         If (STRING027 == "H") Then
  922.             InputStr " What is the cost of level five purchase ", TMONEY003(5), 14, 7, Mask_Ascii(), 2 + 4 + 8
  923.             Goto LABEL029
  924.         Endif
  925.         If (STRING027 == "I") Then
  926.             InputStr " What security level to raise level five users ", TINTEGER003(5), 11, 5, Mask_Num(), 2 + 4 + 8
  927.             Goto LABEL029
  928.         Endif
  929.         If (STRING027 == "J") Then
  930.             InputStr " What security level to drop expired users on five three purchase ", TINTEGER028(5), 11, 5, Mask_Num(), 2 + 4 + 8
  931.             Goto LABEL029
  932.         Endif
  933.         If (STRING027 == "K") Then
  934.             InputStr "  Security to set when level five users have 0 credits", TINTEGER004(5), 11, 4, Mask_Num(), 2 + 4 + 8
  935.             Goto LABEL029
  936.         Endif
  937.         If (STRING027 == "L") Then
  938.             InputStr " Number of days before expiration of level five user ", TINTEGER005(5), 11, 5, Mask_Num(), 2 + 4 + 8
  939.             Goto LABEL029
  940.         Endif
  941.         If (STRING027 == "M") Then
  942.             InputStr " What is the sixth level (value) of credits users may purchase ", TINTEGER025(6), 11, 5, Mask_Num(), 2 + 4 + 8
  943.             Goto LABEL029
  944.         Endif
  945.         If (STRING027 == "N") Then
  946.             InputStr " What is the cost of level six purchase ", TMONEY003(6), 11, 7, Mask_Ascii(), 2 + 4 + 8
  947.             Goto LABEL029
  948.         Endif
  949.         If (STRING027 == "O") Then
  950.             InputStr " What security level to raise level six users ", TINTEGER003(6), 11, 5, Mask_Num(), 2 + 4 + 8
  951.             Goto LABEL029
  952.         Endif
  953.         If (STRING027 == "P") Then
  954.             InputStr " What security level to drop expired users on level six purchase ", TINTEGER028(6), 11, 5, Mask_Num(), 2 + 4 + 8
  955.             Goto LABEL029
  956.         Endif
  957.         If (STRING027 == "Q") Then
  958.             InputStr "  Security level to set when user has 0 credits", TINTEGER004(6), 11, 4, Mask_Num(), 2 + 4 + 8
  959.             Goto LABEL029
  960.         Endif
  961.         If (STRING027 == "R") Then
  962.             InputStr " Number of days before expiration of level six user ", TINTEGER005(6), 11, 5, Mask_Num(), 2 + 4 + 8
  963.             Goto LABEL029
  964.         Endif
  965.         Goto LABEL029
  966.         :LABEL030
  967.         Cls
  968.         STRING027 = ""
  969.         Newlines 1
  970.         PrintLn " @X0E(@X0FA@X0E) @X07Seventh Level (units, credits).........@X0E[@X0B", TINTEGER025(7), "@X0E@POS:50@]@X07"
  971.         PrintLn " @X0E(@X0FB@X0E) @X07Seventh Currency value.................@X0E[@X0B", TMONEY003(7), "@X0E@POS:52@]@X07@X07"
  972.         PrintLn " @X0E(@X0FC@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(7), "@X0E@POS:50@]@X07"
  973.         PrintLn " @X0E(@X0FD@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(7), "@X0E@POS:50@]@X07"
  974.         PrintLn " @X0E(@X0FE@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(7), "@X0E@POS:50@]     @X0ACREDITS.ppe v", STRING018, "@X07"
  975.         PrintLn " @X0E(@X0FF@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(7), "@X0E@POS:50@]@X07"
  976.         PrintLn " @X0E(@X0FG@X0E) @X07Eighth level (units or credits)........@X0E[@X0B", TINTEGER025(8), "@POS:50@@X0E]@X07       Configuration"
  977.         PrintLn " @X0E(@X0FH@X0E) @X07Eighth Level Currency Value............@X0E[@X0B", TMONEY003(8), "@X0E@POS:52@]@X07@X07"
  978.         PrintLn " @X0E(@X0FI@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(8), "@X0E@POS:50@]@X07        Editor@X07"
  979.         PrintLn " @X0E(@X0FJ@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(8), "@X0E@POS:50@]@X07@X07"
  980.         PrintLn " @X0E(@X0FK@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(8), "@X0E@POS:50@]@X07        Page 4 of 4@X07"
  981.         PrintLn " @X0E(@X0FL@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(8), "@X0E@POS:50@]@X07"
  982.         PrintLn " @X0E(@X0FM@X0E) @X07Nineth Level (units or credits)........@X0E[@X0B", TINTEGER025(9), "@X0E@POS:50@]@X07"
  983.         PrintLn " @X0E(@X0FN@X0E) @X07Nineth Level Currency Value........... @X0E[@X0B", TMONEY003(9), "@POS:52@@X0E]@X07"
  984.         PrintLn " @X0E(@X0FO@X0E) @X07Sec level to raise security............@X0E[@X0B", TINTEGER003(9), "@X0E@POS:50@]@X07"
  985.         PrintLn " @X0E(@X0FP@X0E) @X07Sec level to set Expired access........@X0E[@X0B", TINTEGER028(9), "@X0E@POS:50@]@X07@X07"
  986.         PrintLn " @X0E(@X0FQ@X0E) @X07Sec level to set when 0 credits........@X0E[@X0B", TINTEGER004(9), "@X0E@POS:50@]@X07"
  987.         PrintLn " @X0E(@X0FR@X0E) @X07Number of days before expiration.......@X0E[@X0B", TINTEGER005(9), "@X0E@POS:50@]@X07"
  988.         PrintLn 
  989.         InputStr "@X0F @X0BChoose @X0Fan item to @X0Echange [@X0F(@X0E!@X0F) to Save,@X0EC/R@X0F to abort@X0E + @X0Fnext screen]@X07", STRING027, 14, 1, Mask_Ascii(), 4 + 2 + 8 + 64
  990.         If (STRING027 == "!") Goto LABEL031
  991.         If (STRING027 == "") Goto LABEL035
  992.         If (STRING027 == "X") Goto LABEL035
  993.         If (STRING027 == "+") Goto LABEL027
  994.         If (STRING027 == "-") Goto LABEL029
  995.         If (STRING027 == "A") Then
  996.             InputStr " What is the seventh (value) of credits users may purchase ", TINTEGER025(7), 11, 5, Mask_Num(), 2 + 4 + 8
  997.             Goto LABEL030
  998.         Endif
  999.         If (STRING027 == "B") Then
  1000.             InputStr " What is cost of level seventh ", TMONEY003(7), 11, 7, Mask_Ascii(), 2 + 4 + 8
  1001.             Goto LABEL030
  1002.         Endif
  1003.         If (STRING027 == "C") Then
  1004.             InputStr " What security level to raise level seven users ", TINTEGER003(7), 11, 5, Mask_Num(), 2 + 4 + 8
  1005.             Goto LABEL030
  1006.         Endif
  1007.         If (STRING027 == "D") Then
  1008.             InputStr " What security level at which to set expired users (level 7) ", TINTEGER028(7), 11, 5, Mask_Num(), 2 + 4 + 8
  1009.             Goto LABEL030
  1010.         Endif
  1011.         If (STRING027 == "E") Then
  1012.             InputStr "  Security level to set when user has 0 credits", TINTEGER004(7), 11, 4, Mask_Num(), 2 + 4 + 8
  1013.             Goto LABEL030
  1014.         Endif
  1015.         If (STRING027 == "F") Then
  1016.             InputStr " Number of days before expiration of level seven users ", TINTEGER005(7), 11, 5, Mask_Num(), 2 + 4 + 8
  1017.             Goto LABEL030
  1018.         Endif
  1019.         If (STRING027 == "G") Then
  1020.             InputStr "What is the eighth level (value) of credits users may purchase ", TINTEGER025(8), 11, 5, Mask_Num(), 2 + 4 + 8
  1021.             Goto LABEL030
  1022.         Endif
  1023.         If (STRING027 == "H") Then
  1024.             InputStr " What is the cost of level eight purchase ", TMONEY003(8), 14, 7, Mask_Ascii(), 2 + 4 + 8
  1025.             Goto LABEL030
  1026.         Endif
  1027.         If (STRING027 == "I") Then
  1028.             InputStr " What security level to raise level eight users ", TINTEGER003(8), 11, 5, Mask_Num(), 2 + 4 + 8
  1029.             Goto LABEL030
  1030.         Endif
  1031.         If (STRING027 == "J") Then
  1032.             InputStr " What security level to drop expired users level eight purchase ", TINTEGER028(8), 11, 5, Mask_Num(), 2 + 4 + 8
  1033.             Goto LABEL030
  1034.         Endif
  1035.         If (STRING027 == "K") Then
  1036.             InputStr "  Security to set when level eight users have 0 credits", TINTEGER004(8), 11, 4, Mask_Num(), 2 + 4 + 8
  1037.             Goto LABEL030
  1038.         Endif
  1039.         If (STRING027 == "L") Then
  1040.             InputStr " Number of days before expiration of level eight user ", TINTEGER005(8), 11, 5, Mask_Num(), 2 + 4 + 8
  1041.             Goto LABEL030
  1042.         Endif
  1043.         If (STRING027 == "M") Then
  1044.             InputStr " What is the nineth level (value) of credits users may purchase ", TINTEGER025(9), 11, 5, Mask_Num(), 2 + 4 + 8
  1045.             Goto LABEL030
  1046.         Endif
  1047.         If (STRING027 == "N") Then
  1048.             InputStr " What is the cost of level nine purchase ", TMONEY003(9), 11, 7, Mask_Ascii(), 2 + 4 + 8
  1049.             Goto LABEL030
  1050.         Endif
  1051.         If (STRING027 == "O") Then
  1052.             InputStr " What security level to raise level nine users ", TINTEGER003(9), 11, 5, Mask_Num(), 2 + 4 + 8
  1053.             Goto LABEL030
  1054.         Endif
  1055.         If (STRING027 == "P") Then
  1056.             InputStr " What security level to drop expired users on level nine purchase ", TINTEGER028(9), 11, 5, Mask_Num(), 2 + 4 + 8
  1057.             Goto LABEL030
  1058.         Endif
  1059.         If (STRING027 == "Q") Then
  1060.             InputStr "  Security level to set when user has 0 credits", TINTEGER004(9), 11, 4, Mask_Num(), 2 + 4 + 8
  1061.             Goto LABEL030
  1062.         Endif
  1063.         If (STRING027 == "R") Then
  1064.             InputStr " Number of days before expiration of level nine user ", TINTEGER005(9), 11, 5, Mask_Num(), 2 + 4 + 8
  1065.             Goto LABEL030
  1066.         Endif
  1067.         Goto LABEL030
  1068.         :LABEL031
  1069.         FClose 2
  1070.         STRING048 = STRING018
  1071.         FOpen 2, PPEPath() + "credits.cfg", 2, 0
  1072.         FPutLn 2, STRING008
  1073.         FPutLn 2, STRING053
  1074.         FPutLn 2, STRING054
  1075.         FPutLn 2, STRING007
  1076.         FPutLn 2, STRING013
  1077.         FPutLn 2, STRING006
  1078.         FPutLn 2, STRING022
  1079.         FPutLn 2, STRING025
  1080.         FPutLn 2, INTEGER016
  1081.         FPutLn 2, STRING033
  1082.         FPutLn 2, STRING045
  1083.         FPutLn 2, STRING046
  1084.         FPutLn 2, STRING047
  1085.         FPutLn 2, STRING049
  1086.         FPutLn 2, REAL001
  1087.         FPutLn 2, REAL005
  1088.         FPutLn 2, TINTEGER025(1)
  1089.         FPutLn 2, TMONEY003(1)
  1090.         FPutLn 2, TINTEGER003(1)
  1091.         FPutLn 2, TINTEGER028(1)
  1092.         FPutLn 2, TINTEGER004(1)
  1093.         FPutLn 2, TINTEGER005(1)
  1094.         FPutLn 2, TINTEGER025(2)
  1095.         FPutLn 2, TMONEY003(2)
  1096.         FPutLn 2, TINTEGER003(2)
  1097.         FPutLn 2, TINTEGER028(2)
  1098.         FPutLn 2, TINTEGER004(2)
  1099.         FPutLn 2, TINTEGER005(2)
  1100.         FPutLn 2, TINTEGER025(3)
  1101.         FPutLn 2, TMONEY003(3)
  1102.         FPutLn 2, TINTEGER003(3)
  1103.         FPutLn 2, TINTEGER028(3)
  1104.         FPutLn 2, TINTEGER004(3)
  1105.         FPutLn 2, TINTEGER005(3)
  1106.         FPutLn 2, TINTEGER025(4)
  1107.         FPutLn 2, TMONEY003(4)
  1108.         FPutLn 2, TINTEGER003(4)
  1109.         FPutLn 2, TINTEGER028(4)
  1110.         FPutLn 2, TINTEGER004(4)
  1111.         FPutLn 2, TINTEGER005(4)
  1112.         FPutLn 2, TINTEGER025(5)
  1113.         FPutLn 2, TMONEY003(5)
  1114.         FPutLn 2, TINTEGER003(5)
  1115.         FPutLn 2, TINTEGER028(5)
  1116.         FPutLn 2, TINTEGER004(5)
  1117.         FPutLn 2, TINTEGER005(5)
  1118.         FPutLn 2, TINTEGER025(6)
  1119.         FPutLn 2, TMONEY003(6)
  1120.         FPutLn 2, TINTEGER003(6)
  1121.         FPutLn 2, TINTEGER028(6)
  1122.         FPutLn 2, TINTEGER004(6)
  1123.         FPutLn 2, TINTEGER005(6)
  1124.         FPutLn 2, TINTEGER025(7)
  1125.         FPutLn 2, TMONEY003(7)
  1126.         FPutLn 2, TINTEGER003(7)
  1127.         FPutLn 2, TINTEGER028(7)
  1128.         FPutLn 2, TINTEGER004(7)
  1129.         FPutLn 2, TINTEGER005(7)
  1130.         FPutLn 2, TINTEGER025(8)
  1131.         FPutLn 2, TMONEY003(8)
  1132.         FPutLn 2, TINTEGER003(8)
  1133.         FPutLn 2, TINTEGER028(8)
  1134.         FPutLn 2, TINTEGER004(8)
  1135.         FPutLn 2, TINTEGER005(8)
  1136.         FPutLn 2, TINTEGER025(9)
  1137.         FPutLn 2, TMONEY003(9)
  1138.         FPutLn 2, TINTEGER003(9)
  1139.         FPutLn 2, TINTEGER028(9)
  1140.         FPutLn 2, TINTEGER004(9)
  1141.         FPutLn 2, TINTEGER005(9)
  1142.         FPutLn 2, STRING048
  1143.         Goto LABEL035
  1144.         :LABEL032
  1145.         FOpen 2, PPEPath() + "credits.cfg", 2, 0
  1146.         FGet 2, STRING008
  1147.         If (STRING008 == "") STRING008 = " Place your BBS name here"
  1148.         FGet 2, STRING053
  1149.         If (STRING053 == "") STRING053 = "Place street address - leave blank if none"
  1150.         FGet 2, STRING054
  1151.         If (STRING054 == "") STRING054 = " Leave blank if none"
  1152.         FGet 2, STRING007
  1153.         If (STRING007 == "") STRING007 = " Sysop name here"
  1154.         FGet 2, STRING013
  1155.         If (STRING013 == "") STRING013 = "555-1212"
  1156.         FGet 2, STRING006
  1157.         If (STRING006 == "") STRING006 = "000000"
  1158.         FGet 2, STRING022
  1159.         If (STRING022 == "") STRING022 = "Credits"
  1160.         FGet 2, STRING025
  1161.         If (STRING025 == "") STRING025 = "Path to invoices"
  1162.         FGet 2, INTEGER016
  1163.         If (INTEGER016 == "") INTEGER016 = "2"
  1164.         FGet 2, STRING033
  1165.         If (STRING033 == "") STRING033 = "Y"
  1166.         FGet 2, STRING045
  1167.         If (STRING045 == "") STRING045 = "N"
  1168.         FGet 2, STRING046
  1169.         If (STRING046 == "") STRING046 = "N"
  1170.         FGet 2, STRING047
  1171.         If (STRING047 == "") STRING047 = "N"
  1172.         FGet 2, STRING049
  1173.         If (STRING049 == "") STRING049 = "N"
  1174.         FGet 2, REAL001
  1175.         If (REAL001 == "") REAL001 = "0"
  1176.         FGet 2, REAL005
  1177.         If (REAL005 == "") REAL005 = "0"
  1178.         FGet 2, TINTEGER025(1)
  1179.         If (TINTEGER025(1) == "") TINTEGER025(1) = ""
  1180.         FGet 2, TMONEY003(1)
  1181.         If (TMONEY003(1) == "") TMONEY003(1) = ""
  1182.         FGet 2, TINTEGER003(1)
  1183.         If (TINTEGER003(1) == "") TINTEGER003(1) = "0"
  1184.         FGet 2, TINTEGER028(1)
  1185.         If (TINTEGER028(1) == "") TINTEGER028(1) = "0"
  1186.         FGet 2, TINTEGER004(1)
  1187.         If (TINTEGER004(1) == "") TINTEGER004(1) = "0"
  1188.         FGet 2, TINTEGER005(1)
  1189.         If (TINTEGER005(1) == "") TINTEGER005(1) = "0"
  1190.         FGet 2, TINTEGER025(2)
  1191.         If (TINTEGER025(2) == "") TINTEGER025(2) = ""
  1192.         FGet 2, TMONEY003(2)
  1193.         If (TMONEY003(2) == "") TMONEY003(2) = ""
  1194.         FGet 2, TINTEGER003(2)
  1195.         If (TINTEGER003(2) == "") TINTEGER003(2) = "0"
  1196.         FGet 2, TINTEGER028(2)
  1197.         If (TINTEGER028(2) == "") TINTEGER028(2) = "0"
  1198.         FGet 2, TINTEGER004(2)
  1199.         If (TINTEGER004(2) == "") TINTEGER004(2) = "0"
  1200.         FGet 2, TINTEGER005(2)
  1201.         If (TINTEGER005(2) == "") TINTEGER005(2) = "0"
  1202.         FGet 2, TINTEGER025(3)
  1203.         If (TINTEGER025(3) == "") TINTEGER025(3) = ""
  1204.         FGet 2, TMONEY003(3)
  1205.         If (TMONEY003(3) == "") TMONEY003(3) = ""
  1206.         FGet 2, TINTEGER003(3)
  1207.         If (TINTEGER003(3) == "") TINTEGER003(3) = "0"
  1208.         FGet 2, TINTEGER028(3)
  1209.         If (TINTEGER028(3) == "") TINTEGER028(3) = "0"
  1210.         FGet 2, TINTEGER004(3)
  1211.         If (TINTEGER004(3) == "") TINTEGER004(3) = "0"
  1212.         FGet 2, TINTEGER005(3)
  1213.         If (TINTEGER005(3) == "") TINTEGER005(3) = "0"
  1214.         FGet 2, TINTEGER025(4)
  1215.         If (TINTEGER025(4) == "") TINTEGER025(4) = ""
  1216.         FGet 2, TMONEY003(4)
  1217.         If (TMONEY003(4) == "") TMONEY003(4) = ""
  1218.         FGet 2, TINTEGER003(4)
  1219.         If (TINTEGER003(4) == "") TINTEGER003(4) = "0"
  1220.         FGet 2, TINTEGER028(4)
  1221.         If (TINTEGER028(4) == "") TINTEGER028(4) = "0"
  1222.         FGet 2, TINTEGER004(4)
  1223.         If (TINTEGER004(4) == "") TINTEGER004(4) = "0"
  1224.         FGet 2, TINTEGER005(4)
  1225.         If (TINTEGER005(4) == "") TINTEGER005(4) = "0"
  1226.         FGet 2, TINTEGER025(5)
  1227.         If (TINTEGER025(5) == "") TINTEGER025(5) = ""
  1228.         FGet 2, TMONEY003(5)
  1229.         If (TMONEY003(5) == "") TMONEY003(5) = ""
  1230.         FGet 2, TINTEGER003(5)
  1231.         If (TINTEGER003(5) == "") TINTEGER003(5) = "0"
  1232.         FGet 2, TINTEGER028(5)
  1233.         If (TINTEGER028(5) == "") TINTEGER028(5) = "0"
  1234.         FGet 2, TINTEGER004(5)
  1235.         If (TINTEGER004(5) == "") TINTEGER004(5) = "0"
  1236.         FGet 2, TINTEGER005(5)
  1237.         If (TINTEGER005(5) == "") TINTEGER005(5) = "0"
  1238.         FGet 2, TINTEGER025(6)
  1239.         If (TINTEGER025(6) == "") TINTEGER025(6) = ""
  1240.         FGet 2, TMONEY003(6)
  1241.         If (TMONEY003(6) == "") TMONEY003(6) = ""
  1242.         FGet 2, TINTEGER003(6)
  1243.         If (TINTEGER003(6) == "") TINTEGER003(6) = "0"
  1244.         FGet 2, TINTEGER028(6)
  1245.         If (TINTEGER028(6) == "") TINTEGER028(6) = "0"
  1246.         FGet 2, TINTEGER004(6)
  1247.         If (TINTEGER004(6) == "") TINTEGER004(6) = "0"
  1248.         FGet 2, TINTEGER005(6)
  1249.         If (TINTEGER005(6) == "") TINTEGER005(6) = "0"
  1250.         FGet 2, TINTEGER025(7)
  1251.         If (TINTEGER025(7) == "") TINTEGER025(7) = ""
  1252.         FGet 2, TMONEY003(7)
  1253.         If (TMONEY003(7) == "") TMONEY003(7) = ""
  1254.         FGet 2, TINTEGER003(7)
  1255.         If (TINTEGER003(7) == "") TINTEGER003(7) = "0"
  1256.         FGet 2, TINTEGER028(7)
  1257.         If (TINTEGER028(7) == "") TINTEGER028(7) = "0"
  1258.         FGet 2, TINTEGER004(7)
  1259.         If (TINTEGER004(7) == "") TINTEGER004(7) = "0"
  1260.         FGet 2, TINTEGER005(7)
  1261.         If (TINTEGER005(7) == "") TINTEGER005(7) = "0"
  1262.         FGet 2, TINTEGER025(8)
  1263.         If (TINTEGER025(8) == "") TINTEGER025(8) = ""
  1264.         FGet 2, TMONEY003(8)
  1265.         If (TMONEY003(8) == "") TMONEY003(8) = ""
  1266.         FGet 2, TINTEGER003(8)
  1267.         If (TINTEGER003(8) == "") TINTEGER003(8) = "0"
  1268.         FGet 2, TINTEGER028(8)
  1269.         If (TINTEGER028(8) == "") TINTEGER028(8) = "0"
  1270.         FGet 2, TINTEGER004(8)
  1271.         If (TINTEGER004(8) == "") TINTEGER004(8) = "0"
  1272.         FGet 2, TINTEGER005(8)
  1273.         If (TINTEGER005(8) == "") TINTEGER005(8) = "0"
  1274.         FGet 2, TINTEGER025(9)
  1275.         If (TINTEGER025(9) == "") TINTEGER025(9) = ""
  1276.         FGet 2, TMONEY003(9)
  1277.         If (TMONEY003(9) == "") TMONEY003(9) = ""
  1278.         FGet 2, TINTEGER003(9)
  1279.         If (TINTEGER003(9) == "") TINTEGER003(9) = "0"
  1280.         FGet 2, TINTEGER028(9)
  1281.         If (TINTEGER028(9) == "") TINTEGER028(9) = "0"
  1282.         FGet 2, TINTEGER004(9)
  1283.         If (TINTEGER004(9) == "") TINTEGER004(9) = "0"
  1284.         FGet 2, TINTEGER005(9)
  1285.         If (TINTEGER005(9) == "") TINTEGER005(9) = "0"
  1286.         FGet 2, STRING048
  1287.         FClose 2
  1288.         Return
  1289.         :LABEL033
  1290.         STRING026 = "cr" + String(U_RecNum(U_Name())) + ".inv"
  1291.         If (Exist(STRING025 + STRING026)) Goto LABEL034
  1292.         PrintLn 
  1293.         PrintLn "   " + TSTRING020(60)
  1294.         Goto LABEL008
  1295.         :LABEL034
  1296.         STRING024 = Left(ReadLine(PCBDat(), 52), 4)
  1297.         STRING024 = Right(STRING024, 1)
  1298.         If (STRING024 > "2") Then
  1299.             INTEGER027 = ReadLine(PCBDat(), 158)
  1300.             STRING031 = ReadLine(PCBDat(), 159)
  1301.             PrintLn 
  1302.             PrintLn "                       " + TSTRING020(61)
  1303.             PrintLn 
  1304.             Shell 1, INTEGER026, "dsz portx " + STRING031 + "," + String(INTEGER027), " sz " + STRING025 + STRING026
  1305.         Else
  1306.             Shell 1, INTEGER026, "dsz port " + STRING024 + " sz " + STRING025 + STRING026, ""
  1307.         Endif
  1308.         Return
  1309.     Endif
  1310.     :LABEL035
  1311.     If ((TINTEGER025(INTEGER017) == "") || (TINTEGER025(INTEGER017) == "0")) Then
  1312.         FPutLn 7, "N,None", ""
  1313.         End
  1314.     Endif
  1315.     FPut 7, "Y", ",", Date(), ",", Time(), ",", TINTEGER025(INTEGER017), ",", TMONEY003(INTEGER017)
  1316.     If (STRING052 == "Y") FPut 7, ",", "TEST"
  1317.     FPutLn 7
  1318.     End
  1319.  
  1320. ;------------------------------------------------------------------------------
  1321. ;
  1322. ; Usage report (before postprocessing)
  1323. ;
  1324. ; ■ Statements used :
  1325. ;
  1326. ;    3       End
  1327. ;    5       Cls
  1328. ;    5       Wait
  1329. ;    278     Goto 
  1330. ;    209     Let 
  1331. ;    4       Print 
  1332. ;    183     PrintLn 
  1333. ;    253     If 
  1334. ;    4       DispFile 
  1335. ;    5       FOpen 
  1336. ;    10      FAppend 
  1337. ;    9       FClose 
  1338. ;    74      FGet 
  1339. ;    3       FPut 
  1340. ;    127     FPutLn 
  1341. ;    2       GetUser
  1342. ;    1       PutUser
  1343. ;    1       Delete 
  1344. ;    2       Log 
  1345. ;    91      InputStr 
  1346. ;    10      Gosub 
  1347. ;    6       Return
  1348. ;    9       Newlines 
  1349. ;    1       GetToken 
  1350. ;    4       Shell 
  1351. ;    2       AnsiPos 
  1352. ;    1       Message 
  1353. ;    2       Account 
  1354. ;
  1355. ;
  1356. ; ■ Functions used :
  1357. ;
  1358. ;    5       *
  1359. ;    3       /
  1360. ;    431     +
  1361. ;    19      -
  1362. ;    218     ==
  1363. ;    18      <>
  1364. ;    8       <
  1365. ;    7       <=
  1366. ;    3       >
  1367. ;    14      >=
  1368. ;    125     !
  1369. ;    22      &&
  1370. ;    7       ||
  1371. ;    23      Len(
  1372. ;    1       Lower()
  1373. ;    4       Mid()
  1374. ;    9       Left()
  1375. ;    6       Right()
  1376. ;    16      Space()
  1377. ;    3       Ferr()
  1378. ;    7       Chr()
  1379. ;    3       Asc()
  1380. ;    3       InStr()
  1381. ;    12      Date()
  1382. ;    4       Time()
  1383. ;    9       U_Name()
  1384. ;    3       Year()
  1385. ;    2       Month()
  1386. ;    20      StripAtx()
  1387. ;    5       Strip()
  1388. ;    24      String()
  1389. ;    47      Mask_Num()
  1390. ;    28      Mask_Ascii()
  1391. ;    7       PCBDat()
  1392. ;    23      PPEPath()
  1393. ;    7       ReadLine()
  1394. ;    1       SysopSec()
  1395. ;    5       Exist()
  1396. ;    1       LangExt()
  1397. ;    1       ValCC()
  1398. ;    2       FmtCC()
  1399. ;    13      CCType()
  1400. ;    5       Psa()
  1401. ;    1       PPEName()
  1402. ;    4       U_RecNum()
  1403. ;    3       Account()
  1404. ;
  1405. ;------------------------------------------------------------------------------
  1406. ;
  1407. ; Analysis flags : WSds
  1408. ;
  1409. ; W - Write user ■ 5
  1410. ;     Program writes a user record. Although this may be normal for a
  1411. ;     User Editor, it may also be a way to modify an account level.
  1412. ;     ■ Search for : PUTUSER
  1413. ;
  1414. ; S - Shell to DOS ■ 5
  1415. ;     This may be normal if the PPE need to execute an external command,
  1416. ;     but may be actually anything... nasty (formating HD, rebooting,...)
  1417. ;     or usefull (sorting, maintenance,...). Check!
  1418. ;     ■ Search for : SHELL
  1419. ;
  1420. ; d - Access PCBOARD.DAT ■ 2
  1421. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  1422. ;     for many PPE so they can find various informations on the system
  1423. ;     (system paths, max number of lines in messages, ...) but it may also
  1424. ;     be a way to gather vital informations.
  1425. ;     ■ Search for : PCBDAT()
  1426. ;
  1427. ; s - Sysop level access ■ 5
  1428. ;     Program is reading the sysop access level, this may be normal
  1429. ;     but still it is very suspect. It is the best way to give a user
  1430. ;     all priviledges. Check!
  1431. ;     ■ Search for : SYSOPSEC()
  1432. ;
  1433. ;------------------------------------------------------------------------------
  1434. ;
  1435. ; Postprocessing report
  1436. ;
  1437. ;    5       For/Next
  1438. ;    0       While/EndWhile
  1439. ;    116     If/Then or If/Then/Else
  1440. ;    0       Select Case
  1441. ;
  1442. ;------------------------------------------------------------------------------
  1443. ;                 AEGiS Corp - Break the routines, code against the machines!
  1444. ;------------------------------------------------------------------------------
  1445.